package com.sxpi.common.validator.bank;

import org.apache.commons.lang3.StringUtils;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;

public class BankCardValidator implements ConstraintValidator<BankCard, String> {

    @Override
    public void initialize(final BankCard constraintAnnotation) {}

    /**
     * 如果是 true 就通过， false代表不合法，之间报错message
     * @param bank
     * @param context
     * @return
     */
    @Override
    public boolean isValid(final String bank, final ConstraintValidatorContext context) {
        // 如果为空，就不校验，不为空在校验
        // 因为有时候，有的字段不一定是必填得。
        if(StringUtils.isEmpty(bank)){
            return true;
        }
        return BankCardUtil.checkBankCard(bank);
    }

}
